package com.thinkverse.profile.service;

import com.thinkverse.profile.entity.ExpertProfile;

import java.util.List;
import java.util.Map;

/**
 * 专家画像服务接口
 */
public interface ProfileService {
    
    /**
     * 构建专家画像
     */
    void buildExpertProfile(Long expertId);
    
    /**
     * 获取专家画像
     */
    ExpertProfile getExpertProfile(Long expertId);
    
    /**
     * 更新专家画像
     */
    void updateExpertProfile(ExpertProfile profile);
    
    /**
     * 获取专家标签
     */
    List<String> getExpertTags(Long expertId);
    
    /**
     * 获取专家影响力排名
     */
    List<Map<String, Object>> getInfluenceRanking(String researchField, Integer size);
}
